Deterministic Consistency: A Programming Model for Shared Memory Parallelism

نویسندگان

  • Amittai Aviram
  • Bryan Ford
چکیده

The difficulty of developing reliable parallel software is generating interest in deterministic environments, where a given program and input can yield only one possible result. Languages or type systems can enforce determinism in new code, and runtime systems can impose synthetic schedules on legacy parallel code. To parallelize existing serial code, however, we would like a programming model that is naturally deterministic without language restrictions or artificial scheduling. We propose deterministic consistency, a parallel programming model as easy to understand as the “parallel assignment” construct in sequential languages such as Perl and JavaScript, where concurrent threads always read their inputs before writing shared outputs. DC supports common dataand task-parallel synchronization abstractions such as fork/join and barriers, as well as non-hierarchical structures such as producer/consumer pipelines and futures. A preliminary prototype suggests that softwareonly implementations of DC can run applications written for popular parallel environments such as OpenMP with low (< 10%) overhead for some applications.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Workspace Consistency: A Programming Model for Shared Memory Parallelism

Recent interest in deterministic parallelism has yielded new deterministic programming languages, which offer promising features but require rewriting existing code, and deterministic schedulers, which emulate existing thread APIs but do not eliminate races from the basic programming model. Workspace consistency (WC) is a new synchronization and memory consistency model that offers a “naturally...

متن کامل

NestStep: Nested Parallelism and Virtual Shared Memory for the BSP model

NestStep is a parallel programming language for the BSP (bulk–synchronous–parallel) model of parallel computation. Extending the classical BSP model, NestStep supports dynamically nested parallelism by nesting of supersteps and a hierarchical processor group concept. Furthermore, NestStep adds a virtual shared memory realization in software, where memory consistency is relaxed to superstep boun...

متن کامل

Hiding the Java Memory Model with Compilers

The Java memory model is very diÆcult for programmers to understand, and there are several ways of interpreting the memory model. In addition, like most programming languages that follow the shared memory parallel programming model, non-deterministic behaviors due to data races can also occur in Java concurrent programs. Data races and synchronization make it impossible to apply classical compi...

متن کامل

COMP 322: Fundamentals of Parallel Programming Module 1: Deterministic Shared-Memory Parallelism

1 Task-level Parallelism 6 1.1 Task Creation and Termination (Async, Finish) . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.2 Computation Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Ideal Parallelism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.4 Multiprocessor Scheduling . . . . . . . . . ...

متن کامل

Evaluating Sequential Consistency in a Virtually Shared Memory System by Deterministic and Stochastic Petri Nets

This paper introduces a modeling approach for evaluating the performance of consistency models for Virtually Shared Memory systems. The proposed approach employs Deterministic and Stochastic Petri Nets (DSPNs) which provide a unified modeling tool for both qualitative and quantitative analysis. A DSPN of a sequential consistency model is presented which is employed for a quantitative performanc...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009